menu
Type
keyword
Summary
Used with the decorations property to specify that a window displays a menu bar. When used as the style property of a button, specifies that the contents of the button is displayed as a menu. Also used to designate a menu by name or number.
Syntax
menu
Description
Use the menu keyword to give a window a menu bar (on Unix and Windows systems).
If a button's style is set to "menu", its menuMode property determines how the menu is displayed when the user clicks the button.
You can use the menu keyword to refer to one of the buttons in the current menu bar. For example, if the first menu in the menu bar is called "File", the expression the name of menu 1 evaluates to "button " File"". (Remember that in LiveCode, menus are usually implemented as buttons: the button's style and menuMode properties control how it is displayed, and the button's text property is used as the list of menu items.)
The syntax for menu item strings is:
[<flags>] <label> [\'/\' <accelerator> [\'|\' <tag>]]
Where <flags> may include:
!c
,!n
,!r
: the menu item has respectively, a check, no check, or a selected radio button(
: the menu item is disabled-
: the menu item is replaced with a menu separator- multiple tab characters: the number of tabs specifes the depth of the menu item; use this to create submenus
The <accelerator> can be specified as one of:
- <char>: Command key + specified char
- <keyname>: Named key without modifiers
- <modifiers> <char>: Specified modifiers + character
- <modifiers> <keyname>: Specified modifiers + named key
In the <accelerator>, <modifiers> is either:
- a space separated list of: 'command' or 'cmd', 'control' or 'ctrl', 'option' or 'opt', 'alt', 'shift'; in this case the keyname/char should be separated from the list by a space
- a sequence of characters, including:
^
: Command@
: Shift#
: Option%
: Control
In this case no space between the sequence and keyname/char is required
The following named keys are supported:
- F1, F2, F3, F4, ... F15,
- Left, Up, Right, Down,
- Backspace, Delete,
- Tab, Space,
- Return, Enter,
- Home, End, Escape,
- PgUp, PgDown,
- Insert (not on Mac OS X)
On Mac OS X, these keys will be replaced with the appropriate system standard glyph.
A tag can be specified as a |
character followed by a string of ASCII
characters. If such a tag is present then that tag will take the place
of the menu label as the parameter to the menuPick.
A tag will only be recognised following the accelerator
. To specify
a menu tag without an accelerator shortcut, an empty accelerator
can
be specified using /|
followed by the tag text.
- As Windows and Linux do not have the 'Command' modifier, on those platforms 'Command' is an synonym for 'Control'. To ensure cross-platform uniformity it is important that you use 'Command' in preference to 'Control' since 'Control' on Mac OS X is a less frequently used modifier.
- The menu decoration has no effect on Mac OS and OS X systems. On Windows systems, the menu decoration must be set along with the maximize or minimize decorations:you cannot use maximize or minimize without including menu.
Examples
disable menu "Text"
set the decorations of stack "Help" to "menu,maximize"
Related
command: doMenu
function: menus
glossary: property, menu item, OS X, Windows, menu bar, keyword, expression, Mac OS, evaluate, Unix
keyword: menu, button, minimize, text, maximize, menuItem
message: menuPick
object: button
property: style, properties, menuMode, decorations
Compatibility and Support
Introduced
LiveCode 1.0
OS
mac
windows
linux
Platforms
desktop
server